#ifndef QTSEQUENTIALANIMATIONEFFECT_H
#define QTSEQUENTIALANIMATIONEFFECT_H

#include "QtAnimationEffect.h"
#include <list>

class QtSequentialAnimationEffect: public QtAnimationEffect
{
	Q_OBJECT

public:
	QtSequentialAnimationEffect();
	QtSequentialAnimationEffect(const QtSequentialAnimationEffect& rhs);
	virtual ~QtSequentialAnimationEffect();

	void SetDuration(unsigned int newDuration);
	void Start();

	void AddEffect(QtAnimationEffect *effect);
	QtAnimationEffect* Clone() const;

private slots:
	void EffectFinished(QtAnimationEffect *effect);

private:
	std::list<QtAnimationEffect*> effects;
};

#endif //QTSEQUENTIALANIMATIONEFFECT_H
